package com.swanclouds.redfish.managers.domain;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;

public class IPv4Addresses {

    //指定BMC网口的IPv4地址（仅在配置静态地址时使用该字段）
    @JsonProperty("Address")
    private String address;

    //指定BMC网口的IPv4地址对应的子网掩码（仅在配置静态地址时使用该字段）
    @JsonProperty("SubnetMask")
    private String subnetMask;

    //指定BMC网口的IPv4网关地址（仅在配置静态地址时使用该字段）
    @JsonProperty("Gateway")
    private String gateway;

    /**
     * 指定BMC网口的IPv4地址模式，包括：
     * Static 配置为静态地址
     * DHCP 配置为动态获取
     */
    @JsonProperty("AddressOrigin")
    private String addressOrigin;

    @Override
    public String toString() {
        ObjectMapper objectMapper = new ObjectMapper();
        try {
            return objectMapper.writeValueAsString(this);
        } catch (JsonProcessingException e) {
        }
        return "IPv4Addresses{" +
                "address='" + address + '\'' +
                ", subnetMask='" + subnetMask + '\'' +
                ", gateway='" + gateway + '\'' +
                ", addressOrigin='" + addressOrigin + '\'' +
                '}';
    }
}
